<template>
    <div style="width: 100%;height: auto">
        <div id="deawer">
            <v-tableTitle :btnConfig="btnConfig" @cancel="cancel" @save="save"></v-tableTitle>
            <div class="detailBox">
                <v-detail ref="detail"></v-detail>
            </div>
        </div>
    </div>

</template>

<script>
import baseMixin from "@/mixins/BaseMixin";
import skipMixin from "@/mixins/SkipMixin";
import config from "../Config";
import tableTitle from "commons/TableTitle";
import detail from "../details/Detail"

export default {
    name: "",
    mixins: [baseMixin, skipMixin, config],
    data() {
        return {
            newFlag: false
        };
    },
    computed: {
        btnConfig() {
            return [
                {label: this.$t('common.save'), certigier: this.saveStatus||(!this.btnPermNameList.includes('EN02030505')&&!this.btnPermNameList.includes('WM03060505')), invalid: "save"},
                {label: this.$t('common.cancel'), certigier: !this.btnPermNameList.includes('EN02030506')&&!this.btnPermNameList.includes('WM03060506'), invalid: "cancel"},
            ]
        }
    },
    created() {
    },
    methods: {
        //保存按钮
        async save() {
            let flag = this.$refs.detail.$children[1].$refs.detail.submitForm("from");
            if (!flag) {
                return;
            }
            let data = this.$refs.detail.detailData
            data.whseid = this.$store.state.wms;
            data.type = "1";
            if (this.newFlag) {
                try {
                    let res = await this.$api.post('/addStorer/10', data);
                    
                        this.$message.success(res.returnMgr);
                        this.cancel()
                    
                } catch (e) {
                    this.$message.error(e);
                }
            } else {
                try {
                    let res = await this.$api.post('/updateStorer/10', data);
                    
                        this.$message.success(res.returnMgr);
                        this.cancel()
                    
                } catch (e) {
                    this.$message.error(e);
                }
            }
        },
        //弹框取消
        cancel() {
            this.$router.push({name: "clientele"});
        },
    },
    mounted() {
        this.newFlag = this.$store.state.newFlag;
        if (Object.keys(this.$store.state.skip).length !== 0) {
            let data = this.$store.state.skip;
            this.newFlag = data.newFlag;
        }
    },
    watch: {},
    components: {
        "v-tableTitle": tableTitle,
        "v-detail": detail,
    }
}
</script>

<style scoped>

</style>
